﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ENTITY;
using System.Data.SqlClient;

namespace DAO
{
    public class BuiltStringParams
    {
        public SqlCommand InsertParams(Object entity, SqlCommand command)
        {
            string entityName = entity.ToString();
            entityName = entityName.Replace("ENTITY.", "");
            switch (entityName)
            {
                case "EntAccount":
                    EntAccount e = new EntAccount();
                    command.Parameters.Add(e.Username);
                    command.Parameters.Add(e.Password);
                    command.Parameters.Add(e.Permission);
                    command.Parameters.Add(e.Status);
                    return command;

                case "EntAdmin":
                    EntAdmin e1 = new EntAdmin();
                    command.Parameters.Add(e1.Hoten);
                    command.Parameters.Add(e1.Diachi);
                    command.Parameters.Add(e1.Nghenghiep);
                    command.Parameters.Add(e1.Cmnd);
                    command.Parameters.Add(e1.Taikhoannganhang);
                    command.Parameters.Add(e1.Email);
                    command.Parameters.Add(e1.Quocgia);
                    command.Parameters.Add(e1.Dtdd);
                    command.Parameters.Add(e1.Username);
                    return command;

                case "EntManager":
                    EntManager e2 = new EntManager();
                    command.Parameters.Add(e2.Hoten);
                    command.Parameters.Add(e2.Diachi);
                    command.Parameters.Add(e2.Nghenghiep);
                    command.Parameters.Add(e2.Cmnd);
                    command.Parameters.Add(e2.Taikhoannganhang);
                    command.Parameters.Add(e2.Email);
                    command.Parameters.Add(e2.Quocgia);
                    command.Parameters.Add(e2.Dtdd);
                    command.Parameters.Add(e2.Username);
                    return command;
                case "EntUser":
                    EntUser e3 = new EntUser();
                    command.Parameters.Add(e3.Hoten);
                    command.Parameters.Add(e3.Diachi);
                    command.Parameters.Add(e3.Nghenghiep);
                    command.Parameters.Add(e3.Cmnd);
                    command.Parameters.Add(e3.Taikhoannganhang);
                    command.Parameters.Add(e3.Email);
                    command.Parameters.Add(e3.Quocgia);
                    command.Parameters.Add(e3.Dtdd);
                    command.Parameters.Add(e3.Username);
                    return command;
                case "EntDonHang":
                    EntDonHang e4 = new EntDonHang();
                    command.Parameters.Add(e4.Username);
                    command.Parameters.Add(e4.Mamonoc);
                    command.Parameters.Add(e4.Datngay);
                    command.Parameters.Add(e4.Soluong);
                    command.Parameters.Add(e4.Giaohang);

                    return command;
                case "EntMonOc":
                    EntMonOc e5 = new EntMonOc();
                    command.Parameters.Add(e5.Mamo);
                    command.Parameters.Add(e5.Tenmo);
                    command.Parameters.Add(e5.Chitietmo);
                    return command;
                case "EntChiTietMonoc":
                    EntChiTietMonoc e6 = new EntChiTietMonoc();
                    command.Parameters.Add(e6.Tenchebien);
                    command.Parameters.Add(e6.Ngaynhap);
                    command.Parameters.Add(e6.Tinhtrang);
                    command.Parameters.Add(e6.Soluongnhap);
                    command.Parameters.Add(e6.Soluongton);
                    command.Parameters.Add(e6.Image);
                    return command;
            }
            return command;
        }
        public SqlCommand UpdateParams(string entityName, SqlCommand command)
        {
            switch (entityName)
            {
                case "EntAccount":
                    EntAccount e = new EntAccount();
                    command.Parameters.Add(e.Username);
                    command.Parameters.Add(e.Password);
                    command.Parameters.Add(e.Permission);
                    command.Parameters.Add(e.Status);
                    return command;

                case "EntAdmin":
                    EntAdmin e1 = new EntAdmin();
                    command.Parameters.Add(e1.Hoten);
                    command.Parameters.Add(e1.Diachi);
                    command.Parameters.Add(e1.Nghenghiep);
                    command.Parameters.Add(e1.Cmnd);
                    command.Parameters.Add(e1.Taikhoannganhang);
                    command.Parameters.Add(e1.Email);
                    command.Parameters.Add(e1.Quocgia);
                    command.Parameters.Add(e1.Dtdd);
                    command.Parameters.Add(e1.Username);
                    return command;

                case "EntManager":
                    EntManager e2 = new EntManager();
                    command.Parameters.Add(e2.Hoten);
                    command.Parameters.Add(e2.Diachi);
                    command.Parameters.Add(e2.Nghenghiep);
                    command.Parameters.Add(e2.Cmnd);
                    command.Parameters.Add(e2.Taikhoannganhang);
                    command.Parameters.Add(e2.Email);
                    command.Parameters.Add(e2.Quocgia);
                    command.Parameters.Add(e2.Dtdd);
                    command.Parameters.Add(e2.Username);
                    return command;
                case "EntUser":
                    EntUser e3 = new EntUser();
                    command.Parameters.Add(e3.Hoten);
                    command.Parameters.Add(e3.Diachi);
                    command.Parameters.Add(e3.Nghenghiep);
                    command.Parameters.Add(e3.Cmnd);
                    command.Parameters.Add(e3.Taikhoannganhang);
                    command.Parameters.Add(e3.Email);
                    command.Parameters.Add(e3.Quocgia);
                    command.Parameters.Add(e3.Dtdd);
                    command.Parameters.Add(e3.Username);
                    return command;
                case "EntDonHang":
                    EntDonHang e4 = new EntDonHang();
                    command.Parameters.Add(e4.Username);
                    command.Parameters.Add(e4.Mamonoc);
                    command.Parameters.Add(e4.Datngay);
                    command.Parameters.Add(e4.Soluong);
                    command.Parameters.Add(e4.Giaohang);

                    return command;
                case "EntMonOc":
                    EntMonOc e5 = new EntMonOc();
                    command.Parameters.Add(e5.Mamo);
                    command.Parameters.Add(e5.Tenmo);
                    command.Parameters.Add(e5.Chitietmo);
                    return command;
                case "EntChiTietMonoc":
                    EntChiTietMonoc e6 = new EntChiTietMonoc();
                    command.Parameters.Add(e6.Tenchebien);
                    command.Parameters.Add(e6.Ngaynhap);
                    command.Parameters.Add(e6.Tinhtrang);
                    command.Parameters.Add(e6.Soluongnhap);
                    command.Parameters.Add(e6.Soluongton);
                    command.Parameters.Add(e6.Image);
                    return command;
            }
            return null;
        }
        public SqlCommand DeleteParam(string entityName, SqlCommand command)
        {
            switch (entityName)
            {
                case "EntAccount":
                    EntAccount e = new EntAccount();
                    command.Parameters.Add(e.Username);
                    command.Parameters.Add(e.Password);
                    command.Parameters.Add(e.Permission);
                    command.Parameters.Add(e.Status);
                    return command;

                case "EntAdmin":
                    EntAdmin e1 = new EntAdmin();
                    command.Parameters.Add(e1.Hoten);
                    command.Parameters.Add(e1.Diachi);
                    command.Parameters.Add(e1.Nghenghiep);
                    command.Parameters.Add(e1.Cmnd);
                    command.Parameters.Add(e1.Taikhoannganhang);
                    command.Parameters.Add(e1.Email);
                    command.Parameters.Add(e1.Quocgia);
                    command.Parameters.Add(e1.Dtdd);
                    command.Parameters.Add(e1.Username);
                    return command;

                case "EntManager":
                    EntManager e2 = new EntManager();
                    command.Parameters.Add(e2.Hoten);
                    command.Parameters.Add(e2.Diachi);
                    command.Parameters.Add(e2.Nghenghiep);
                    command.Parameters.Add(e2.Cmnd);
                    command.Parameters.Add(e2.Taikhoannganhang);
                    command.Parameters.Add(e2.Email);
                    command.Parameters.Add(e2.Quocgia);
                    command.Parameters.Add(e2.Dtdd);
                    command.Parameters.Add(e2.Username);
                    return command;
                case "EntUser":
                    EntUser e3 = new EntUser();
                    command.Parameters.Add(e3.Hoten);
                    command.Parameters.Add(e3.Diachi);
                    command.Parameters.Add(e3.Nghenghiep);
                    command.Parameters.Add(e3.Cmnd);
                    command.Parameters.Add(e3.Taikhoannganhang);
                    command.Parameters.Add(e3.Email);
                    command.Parameters.Add(e3.Quocgia);
                    command.Parameters.Add(e3.Dtdd);
                    command.Parameters.Add(e3.Username);
                    return command;
                case "EntDonHang":
                    EntDonHang e4 = new EntDonHang();
                    command.Parameters.Add(e4.Username);
                    command.Parameters.Add(e4.Mamonoc);
                    command.Parameters.Add(e4.Datngay);
                    command.Parameters.Add(e4.Soluong);
                    command.Parameters.Add(e4.Giaohang);

                    return command;
                case "EntMonOc":
                    EntMonOc e5 = new EntMonOc();
                    command.Parameters.Add(e5.Mamo);
                    command.Parameters.Add(e5.Tenmo);
                    command.Parameters.Add(e5.Chitietmo);
                    return command;
                case "EntChiTietMonoc":
                    EntChiTietMonoc e6 = new EntChiTietMonoc();
                    command.Parameters.Add(e6.Tenchebien);
                    command.Parameters.Add(e6.Ngaynhap);
                    command.Parameters.Add(e6.Tinhtrang);
                    command.Parameters.Add(e6.Soluongnhap);
                    command.Parameters.Add(e6.Soluongton);
                    command.Parameters.Add(e6.Image);
                    return command;
            }
            return null;
        }
        public SqlCommand ShowParam(string entityName, SqlCommand command)
        {
            switch (entityName)
            {
                case "EntAccount":
                    EntAccount e = new EntAccount();
                    command.Parameters.Add(e.Username);
                    command.Parameters.Add(e.Password);
                    command.Parameters.Add(e.Permission);
                    command.Parameters.Add(e.Status);
                    return command;

                case "EntAdmin":
                    EntAdmin e1 = new EntAdmin();
                    command.Parameters.Add(e1.Hoten);
                    command.Parameters.Add(e1.Diachi);
                    command.Parameters.Add(e1.Nghenghiep);
                    command.Parameters.Add(e1.Cmnd);
                    command.Parameters.Add(e1.Taikhoannganhang);
                    command.Parameters.Add(e1.Email);
                    command.Parameters.Add(e1.Quocgia);
                    command.Parameters.Add(e1.Dtdd);
                    command.Parameters.Add(e1.Username);
                    return command;

                case "EntManager":
                    EntManager e2 = new EntManager();
                    command.Parameters.Add(e2.Hoten);
                    command.Parameters.Add(e2.Diachi);
                    command.Parameters.Add(e2.Nghenghiep);
                    command.Parameters.Add(e2.Cmnd);
                    command.Parameters.Add(e2.Taikhoannganhang);
                    command.Parameters.Add(e2.Email);
                    command.Parameters.Add(e2.Quocgia);
                    command.Parameters.Add(e2.Dtdd);
                    command.Parameters.Add(e2.Username);
                    return command;
                case "EntUser":
                    EntUser e3 = new EntUser();
                    command.Parameters.Add(e3.Hoten);
                    command.Parameters.Add(e3.Diachi);
                    command.Parameters.Add(e3.Nghenghiep);
                    command.Parameters.Add(e3.Cmnd);
                    command.Parameters.Add(e3.Taikhoannganhang);
                    command.Parameters.Add(e3.Email);
                    command.Parameters.Add(e3.Quocgia);
                    command.Parameters.Add(e3.Dtdd);
                    command.Parameters.Add(e3.Username);
                    return command;
                case "EntDonHang":
                    EntDonHang e4 = new EntDonHang();
                    command.Parameters.Add(e4.Username);
                    command.Parameters.Add(e4.Mamonoc);
                    command.Parameters.Add(e4.Datngay);
                    command.Parameters.Add(e4.Soluong);
                    command.Parameters.Add(e4.Giaohang);

                    return command;
                case "EntMonOc":
                    EntMonOc e5 = new EntMonOc();
                    command.Parameters.Add(e5.Mamo);
                    command.Parameters.Add(e5.Tenmo);
                    command.Parameters.Add(e5.Chitietmo);
                    return command;
                case "EntChiTietMonoc":
                    EntChiTietMonoc e6 = new EntChiTietMonoc();
                    command.Parameters.Add(e6.Tenchebien);
                    command.Parameters.Add(e6.Ngaynhap);
                    command.Parameters.Add(e6.Tinhtrang);
                    command.Parameters.Add(e6.Soluongnhap);
                    command.Parameters.Add(e6.Soluongton);
                    command.Parameters.Add(e6.Image);
                    return command;
            }
            return null;
        }
        public SqlCommand LoginParam(string entityName, SqlCommand command)
        {
            switch (entityName)
            {
                case "EntAccount":
                    EntAccount e = new EntAccount();
                    command.Parameters.Add(e.Username);
                    command.Parameters.Add(e.Password);
                    command.Parameters.Add(e.Permission);
                    command.Parameters.Add(e.Status);
                    return command;

                case "EntAdmin":
                    EntAdmin e1 = new EntAdmin();
                    command.Parameters.Add(e1.Hoten);
                    command.Parameters.Add(e1.Diachi);
                    command.Parameters.Add(e1.Nghenghiep);
                    command.Parameters.Add(e1.Cmnd);
                    command.Parameters.Add(e1.Taikhoannganhang);
                    command.Parameters.Add(e1.Email);
                    command.Parameters.Add(e1.Quocgia);
                    command.Parameters.Add(e1.Dtdd);
                    command.Parameters.Add(e1.Username);
                    return command;

                case "EntManager":
                    EntManager e2 = new EntManager();
                    command.Parameters.Add(e2.Hoten);
                    command.Parameters.Add(e2.Diachi);
                    command.Parameters.Add(e2.Nghenghiep);
                    command.Parameters.Add(e2.Cmnd);
                    command.Parameters.Add(e2.Taikhoannganhang);
                    command.Parameters.Add(e2.Email);
                    command.Parameters.Add(e2.Quocgia);
                    command.Parameters.Add(e2.Dtdd);
                    command.Parameters.Add(e2.Username);
                    return command;
                case "EntUser":
                    EntUser e3 = new EntUser();
                    command.Parameters.Add(e3.Hoten);
                    command.Parameters.Add(e3.Diachi);
                    command.Parameters.Add(e3.Nghenghiep);
                    command.Parameters.Add(e3.Cmnd);
                    command.Parameters.Add(e3.Taikhoannganhang);
                    command.Parameters.Add(e3.Email);
                    command.Parameters.Add(e3.Quocgia);
                    command.Parameters.Add(e3.Dtdd);
                    command.Parameters.Add(e3.Username);
                    return command;
                case "EntDonHang":
                    EntDonHang e4 = new EntDonHang();
                    command.Parameters.Add(e4.Username);
                    command.Parameters.Add(e4.Mamonoc);
                    command.Parameters.Add(e4.Datngay);
                    command.Parameters.Add(e4.Soluong);
                    command.Parameters.Add(e4.Giaohang);

                    return command;
                case "EntMonOc":
                    EntMonOc e5 = new EntMonOc();
                    command.Parameters.Add(e5.Mamo);
                    command.Parameters.Add(e5.Tenmo);
                    command.Parameters.Add(e5.Chitietmo);
                    return command;
                case "EntChiTietMonoc":
                    EntChiTietMonoc e6 = new EntChiTietMonoc();
                    command.Parameters.Add(e6.Tenchebien);
                    command.Parameters.Add(e6.Ngaynhap);
                    command.Parameters.Add(e6.Tinhtrang);
                    command.Parameters.Add(e6.Soluongnhap);
                    command.Parameters.Add(e6.Soluongton);
                    command.Parameters.Add(e6.Image);
                    return command;
            }
            return null ;
        }
    }
}
